#ifndef PROP_H
#define PROP_H

#include <vector>
#include <string>
#include <iostream>
#include <sstream>
#include <assert.h>

#include "GameHelper.h"
#include "ModelRender.h"
#include "Entity.h"

using namespace std;

class Prop {
    private:
        string name;
        string modelPath;
        string textPath;
        ModelRender* model;
        BoundingBox mask;
        
        vec3 trans;
        vec3 scale;
        vec3 rotAxis;
        vec3 color;
        float rotAngle;

        bool isAutoBoundingBox;

        void GenerateBoundingBox();
        
    public:
        Prop(vector<string> data);
        
        void Render(bool hitbox);
        bool CollidesWith(Entity entity);
        
        void SetModelData(RenderManager rManager);
        
        BoundingBox GetMask() { return mask; }
};

#endif
